Repository navigation
feat(app): prototype flows for onboarding, care consultation, and clean architecture (#28, #27) - #38
Merged
Merged
Conversation
…st suite - Track entire apps/eva_mobile/lib/ codebase under Git version control. - Ensure root .gitignore excludes !apps/eva_mobile/lib/ from repository ignore rules. - Structure client around Clean Architecture with domain entities, abstract repositories, and dual-source data layer (Mock vs Remote API). - Implement feature modules: auth, care, chat, dass, diary, emergency, home, monitoring, recommendations, tutorial, and voice_call. - Integrate Riverpod state management, centralized routing in AppRouter with custom route transitions, and responsive mobile design system (GlassCard, AppBackButton, AppSnackBar). - Align unit, screen, and widget test suites in apps/eva_mobile/test/ with current feature provider contracts. Closes #28
…ation widgets - Break down monolithic screens into modular domain presentation widgets: - Diary: extract fallback fixture, DiaryInsightCard, DiaryKeyEventsCard, DiaryReflectionCard, DiaryEmotionDistributionCard, and DiaryTranscriptSection (1,647 -> 538 lines). - DASS-21: extract DassSubscaleInfoSheet, DassSubscalesCard, DassQuestionCard, and DassFloatingSaveBar (1,641 -> 520 lines). - Home: extract HomeEvaInsightCard, HomeQuickActions, HomeCrisisBanner, HomeDailyProgressCard, and HomeRecommendationsSection (1,629 -> 590 lines). - Remove double-spacing boilerplate and inline styles across presentation screens. - Strengthen InteractiveSpotlightOverlay hit testing to allow direct tap-through via cutout hole and prevent pumpAndSettle timeout. - Align PsychologistEntity psychiatrist detection, CommunityStatusModel copyWith, and full Flutter test suite (99/99 tests passed, 0 analyzer issues). Related: #28
…ject chat repository - Decouple VoiceSessionDetailScreen from legacy VoiceCallRepository using Riverpod chatRepositoryProvider - Delete obsolete lib/data/repositories/voice_call_repository.dart and wipe lib/data - Delete unused services: audio_recorder_service, stt_service, vad_audio_service - Delete obsolete widgets: emergency_contact_bottom_sheet, mood_checkin_bottom_sheet, and luna_loading_orb - Standardize AppConfig imports across all features to package:eva_mobile/config/app_config.dart - Align residual branding references from Luna to Eva in tutorial entities, assets, and tests - All 98 tests passing, 0 analyzer issues
… feat/28-eva-mobile-client
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This Pull Request delivers prototype flows for onboarding, telehealth consultation, and coin wallet in Eva Mobile (Issue #28), along with backend clean code architecture modularization (Issue #27).
Key Highlights
AppSnackBar,CustomButton,GlassCard, and unified theme tokens.id-ID-GadisNeural) inEdgeTTSProviderwhen non-Edge voice IDs are provided.app/services/{module}/) and schemas (app/schemas/{module}/).app/api/dependencies.py).Linked Issues
Evidence & Verification
flutter test test/widgets/app_snack_bar_test.dartpassed cleanly.python -m compileall apps/backend/api/app packages/ai/passed with 0 errors.origin/main.